/*
* 使用基于 tcp 协议的编程模型实现将 UserMessage 类型对象由客户端发送给服务器；
  服 务 器接 收到 对象 后判 断 用户 对象 信息 是否 为 "admin" 和 "123456"， 若 是则 将 UserMessage 对象中的类型改为"success"，否则将类型改为"fail"并回发给客户端，客户 端接收到服务器发来的对象后判断并给出登录成功或者失败的提示。
  其中 UserMessage 类的特征有：类型(字符串类型) 和 用户对象(User 类型)。
  其中 User 类的特征有：用户名、密码(字符串类型)。
  如：
                UserMessage tum = new UserMessage("check", new User("admin", "123456"));  
* */
package PhaseoneModulefour.TheFourQuestion.code;

import java.io.Serializable;

public class User implements Serializable {
    private static final long serialVersionUID = -2749056776334023828L;
    private String username;
    private String pasword;

    public User() {
    }

    public User(String username, String pasword) {
        this.username = username;
        this.pasword = pasword;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPasword() {
        return pasword;
    }

    public void setPasword(String pasword) {
        this.pasword = pasword;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        User user = (User) o;

        if (username != null ? !username.equals(user.username) : user.username != null) return false;
        return pasword != null ? pasword.equals(user.pasword) : user.pasword == null;
    }

    @Override
    public int hashCode() {
        int result = username != null ? username.hashCode() : 0;
        result = 31 * result + (pasword != null ? pasword.hashCode() : 0);
        return result;
    }

    @Override
    public String toString() {
        return "User{" +
                "username='" + username + '\'' +
                ", pasword='" + pasword + '\'' +
                '}';
    }
}